import { HTTP_BASE_URL } from './utils/config.js';
const util = require('utils/util.js');

App({

  globalData: {
    url: HTTP_BASE_URL,
    userInfo: null,
    statusBarHeight: '',
    code: 0,
    
  },

  onLaunch: function (options) {
  
    // 初始化配置
    this.init(options)
    // 云服务器配置
    this.wxCloudSetting()
    // 状态栏高度
    this.statusBarHeight()
    // 小程序更新机制
    this.appUpdate()

  },

  init: function (options){
    console.log(options.query.scene)
    console.log(options.path)
    console.log(options.scene)
    var that = this
    // 小程序来源值
    switch (options.scene) {
      //扫描小程序码
      case 1047:
        that.globalData.code = options.scene;
        console.log('来源扫描小程序码' +
          decodeURIComponent(options.query.scene))
        break;
      //长按图片识别小程序码
      case 1048:
        that.globalData.code = options.scene;
        console.log('来源长按图片识别小程序码' + options.scene)
        break;
      //手机相册选取小程序码
      case 1049:
        that.globalData.code = options.scene;
        console.log('来源手机相册选取小程序码' + options.scene)
        break;
      //直接进入小程序
      case 1001:
        that.globalData.code = options.scene;
        break;
    }

    if (HTTP_BASE_URL == '') {
      console.error("请配置config.js文件中的 ' HTTP_BASE_URL'\n\n请修改开发者工具中【详情】->【AppID】改为自己的Appid\n\n请前往后台【小程序】->【小程序配置】填写自己的 appId and AppSecret");
      return false;
    } else {
      console.log('当前环境为HTTP_BASE_URL='+ HTTP_BASE_URL)
    }
  },

  /**
   * 云服务器配置
   */
  wxCloudSetting: function(){
    if (!wx.cloud) {
      console.error
      ('请使用 2.2.3 或以上的基础库以使用云能力')
    } else {
      wx.cloud.init({
        // env 参数说明：
        //   env 参数决定接下来小程序发起的云开发调用（wx.cloud.xxx）会默认请求到哪个云环境的资源
        //   此处请填入环境 ID, 环境 ID 可打开云控制台查看
        //   如不填则使用默认环境（第一个创建的环境）
        env: 'cgj-fn5nk',
        traceUser: true,
      })
    }
  },

  /**
   * 获取状态栏和导航栏高度
   */
  statusBarHeight: function(){
    wx.getSystemInfo({
      success: (res) => {
        // 状态栏的高度
        this.globalData.statusBarHeight = res.statusBarHeight
        // console.log('statusBarHeight' + JSON.stringify(res))
      }
    })
  },

  /**
   * 小程序 版本更新机制 
   */
  appUpdate: function(){

    const updateManager = wx.getUpdateManager();

    updateManager.onCheckForUpdate(function (res) {
      // 请求完新版本信息的回调
      console.log('当前版本是否可更新 = '+res.hasUpdate)
    })

    updateManager.onUpdateReady(function () {
      wx.showModal({
        title: '更新提示',
        content: '新版本已经准备好，是否重启应用？',
        success: function (res) {
          if (res.confirm) {
            // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
            updateManager.applyUpdate()
          }
        }
      })
    })

    updateManager.onUpdateFailed(function () {
      // 新版本下载失败
    })
  },

  /*
 * 合并数组
 * @param array list 请求返回数据
 * @param array sp 原始数组
 * @return array
 */
  SplitArray: function (list, sp) { 
    return util.SplitArray(list, sp) 
  },

  /**
   * 时间戳格式化
   * console.log(app.formatTimenumber(1488481383))
   */
  formatTimenumber: function (time) {
    return util.formatTimenumber(time, 'Y-M-D h:m:s')
  }

})

